package com.itheima.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.itheima.pojo.Clazz;
import java.time.LocalDate;
import java.util.List;

public interface ClazzService {

    /**
     * 分页条件查询班级
     * @param name 班级名称
     * @param begin 结课开始时间
     * @param end 结课结束时间
     * @param page 页码
     * @param pageSize 每页条数
     * @return 分页数据
     */
    IPage<Clazz> pageQuery(String name, LocalDate begin, LocalDate end, int page, int pageSize);

    /**
     * 新增班级
     * @param clazz 班级信息
     */
    void save(Clazz clazz);

    /**
     * 根据id查询班级
     * @param id 班级id
     * @return 班级信息
     */
    Clazz getById(Long id);

    /**
     * 修改班级
     * @param clazz 班级信息
     */
    void update(Clazz clazz);

    /**
     * 根据id删除班级
     * @param id 班级id
     */
    void deleteById(Long id);

    /**
     * 查询所有班级
     * @return 班级列表
     */
    List<Clazz> findAll();
}